#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    // 开启定时器事件
    time_id = this->startTimer(1000); // 每间隔1000毫秒触发一次定时器事件
    // 返回一个time_id相当于每个定时器的一个身份标识
}

Widget::~Widget()
{
    delete ui;
}

void Widget::timerEvent(QTimerEvent *event)
{
    // 如果此时的程序中存在多个定时器，则每个定时器都会触发这个timerEvent事件
    if (event->timerId() != this->time_id) {
        // 直接忽略
        return;
    }
    // 是我们自己的定时器
    int value = ui->lcdNumber->intValue();
    if (value <= 0) {
        // 停止定时器
        this->killTimer(this->time_id);
        return;
    }
    value--;
    ui->lcdNumber->display(value);
}

